Synthesizing Dynamic Programming Algorithms from Linear Temporal Logic Formulae
نویسندگان
چکیده
The problem of testing a linear temporal logic (LTL) formula on a finite execution trace of events, generated by an executing program, occurs naturally in runtime analysis of software. We present an algorithm which takes an LTL formula and generates an efficient dynamic programming algorithm. The generated algorithm tests whether the LTL formula is satisfied by a finite trace of events given as input. The generated algorithm runs in linear time, its constant depending on the size of the LTL formula. The memory needed is constant, also depending on the size of the formula.
منابع مشابه
Monitoring Execution Traces using Metric Alternating Automata
We present an automata based verification framework to monitor a running system against a high level specification. Our framework includes specification formalisms to express system properties and verification algorithms to check an execution trace of a system against the intended behavior. Linear Temporal Logic (LTL) is a widely used specification language to express temporal properties of a s...
متن کاملCS422 – Formal Methods in System Design: A Monitor Synthesis Algorithm for Past LTL
A monitor synthesis algorithm from linear temporal logic (LTL) safety formulae of the form φ where φ is a past time LTL formula was presented in [3]. The generated monitors implemented the recursive semantics of past-time LTL using a dynamic programming technique, and needed O(|φ|) time to process each new event and O(|φ|) total space. Some compiler-like optimizations of the generated monitors ...
متن کاملRuntime Analysis of Linear Temporal Logic Specifications
This report presents an approach to checking a running program against its Linear Temporal Logic (LTL) specifications. LTL is a widely used logic for expressing properties of programs viewed as sets of executions. Our approach consists of translating LTL formulae to finite-state automata, which are used as observers of the program behavior. The translation algorithm we propose modifies standard...
متن کاملA Randomized Testbench for Algorithms Translating Linear Temporal Logic Formulae into Büchi Automata
متن کامل
A parallel execution model for Chronolog
Temporal logic has been widely used as a formalism for program specification and verification [9, 12, 13], modelling temporal databases [1, 3, 14] and reasoning about time [8, 19, 20]. In temporal logic, the meanings of formulae depend on an implicit time parameter and elements from different moments in time can be combined through the use of temporal operators. Therefore, temporal logic can mo...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001